1. Field of the Invention
The present invention relates to a storage apparatus, a control method therefor and a program, and in particular, to a storage apparatus, a control method therefor and a program configured for integratively managing storage areas of many storage apparatuses.
2. Description of the Related Art
As a storage apparatus, there is a so-called magnetic disk array apparatus configured to integratively handle respective storage areas of a plurality of magnetic disk apparatuses as a single logical volume.
In such a storage apparatus, when writing processing for the relevant magnetic disk, i.e., data updating processing, is not carried out properly due to a failure or such of the particular magnetic disk apparatus, old data, existing before the updating, is read upon data reading therefrom. In such a case, it may not be possible to determine that the thus-read data is actually erroneous data, existing before the updating. In this case, the old data is transmitted to a host apparatus. As a result, the host apparatus receives the old data before the updating, and as a result, a serious problem may occur, such as that the latest data is lost, for some cases.
Generally speaking, in a magnetic disk apparatus, a writing head is positioned at an address which is a writing target on a disk recording medium; after that, a writing current is provided thereto; and thus a magnetization direction on the disk recording medium is controlled, so that data writing is achieved. However, there may be a case where trouble occurs in a writing circuit, or when a sufficient output cannot be obtained from the writing head. In such a case, even when a control part of the magnetic disk apparatus carries out proper writing operations, the magnetization direction on the disk recording medium may not be changed sufficiently, so that data before the writing (old data) may still remain.
If as a result, the old data is read from the magnetic disk as mentioned above, a problem in the contents of the read data may not be recognized at all. In such a case, the control part of the magnetic disk array apparatus cannot detect the data problem even though the old data is read.
Conventionally, for the problem, generally the following two methods are applied to prevent reading of old data or detecting such a problematic situation.
1) Write check is carried out by the control part of the disk array apparatus.
For carrying out this processing, the following two methods may be applied:
(a) Upon data writing, data reading is also carried out, and a data comparison is made therebetween.
(b) Write patrol is carried out, which is described next.
Typically, the above-mentioned reading of old data occurs due to a failure or such in the magnetic disk apparatus. Therefore, the control part of the magnetic disk array apparatus carries out a write patrol at regular intervals for each magnetic disk apparatus, so as to detect such possible trouble(s). That is, when an error is detected during the write patrol, it is determined that a problem occurs in the corresponding magnetic disk apparatus, and data stored in the magnetic disk apparatus can be invalidated.
Typically, the write patrol comprises the following three steps:
(i) data is written in a special patrol area of the magnetic disk apparatus;
(ii) the thus-written data is read out; and
(iii) the written data and the read data thus obtained are compared.
When disagreement in the data is detected as a result of step (iii), it is determined that an error has occurred. Write patrol is carried out for each magnetic disk apparatus for which the corresponding storage area is integratively managed by the magnetic disk array apparatus.
2) The above-described two conventional methods may be applied as follows:
(a) In response to a writing instruction from the control part of the magnetic disk array apparatus, each magnetic disk apparatus automatically carries out data writing/data reading/data comparison. Then, when data error is detected, an error message is responded to the above-mentioned writing instruction. The control part of the magnetic disk array apparatus detects from this error message that writing error has occurred in the corresponding magnetic disk apparatus.
(b) Each magnetic disk apparatus itself carries out write patrol automatically. Then, when an error is detected therefrom, data reading is invalidated after that detection.
Japanese Laid-open Patent Application No. 5-166304 discusses carrying out a comparison between written data and read data as described above for item 1) (a), in which in response to a writing instruction from the control part of the magnetic disk array apparatus (each time data is written), each magnetic disk apparatus automatically carries out data writing, data reading, and data comparison based upon CRC data written in a register. However, when carrying out a comparison between written data and read data as described above for the item 1) (a) or 2) (a), in addition to the time required for transferring write data from the host apparatus to the magnetic disk array apparatus, time is required for processing read data having the same contents. As a result, processing time required for each data writing operation increases, overhead increases, and thus system performance may be degraded accordingly.
Further, when carrying out write patrol mentioned above for the item 1) (b) or 2) (b), data integrity may not be assured in the interval between a patrol and a subsequent patrol.
Japanese Laid-open Patent Application No. 2002-322850 discusses providing a head/disk tester having a closed loop positioning system for correcting a thermal drift generated in positioning a magnetic head to a magnetic disc.